#ifndef D20CAMPAIGNMODEL_H
#define D20CAMPAIGNMODEL_H


#include "d20models_global.h"
#include "D20BaseModel.h"


#include <QStringList>


class D20MODELSSHARED_EXPORT D20CampaignModel : public D20BaseModel
{
    Q_OBJECT
public:

    enum Group
    {
        Group_FIRST = 0,

        DiceGroup = Group_FIRST,
        AttributeGroup,

        SkillGroup,
        FeatGroup,
        SpecialGroup,

        BaseBonusGroup,
        SaveBonusGroup,

        HitDiceGroup,
        SkillPointsGroup,

        Group_LAST = SkillPointsGroup
    };


    D20CampaignModel(QObject *parent = 0);

    QStringList skills(const bool& sub_skills = false) const;
    QStringList feats() const;
    QStringList specials() const;
    QStringList baseBonuses() const;
    QStringList saveBonuses() const;
    QStringList subSkills(const QString& skill) const;

    QVariantMap options(const int& groupId, const QString& name = QString()) const;


signals:

public slots:

};

#endif // D20CAMPAIGNMODEL_H
